home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
qbbs
/
qexprt25.zip
/
QEXPORT.DOC
next >
Wrap
Text File
|
1989-10-05
|
15KB
|
463 lines
┌─────────────────────────────┐
│ -*- Q-Export -*- │
└─────────────────────────────┘
v2.50
A Message Exporting Utility
for QuickBBS Systems.
by
Bob Ransom
Copyright (c) 1989
All Rights Reserved
First Things First --
This version of Q-Export is being released as shareware.
A great deal of work has gone into this program, expanding
it and making it more versatile, adding features, etc.
If, after a reasonable trial period, you find it useful
and wish to use it regularly, please send a small donation
of $5 to me at the address listed at the end of this
document.
What It Be --
Q-Export is a simple means to move massive amounts of
messages out of your QuickBBS message base and into a text
file. Since QuickBBS stores its messages in a Turbo
Pascal database, with a variety of index files and other
things, you can't just "TYPE" the message base and make
any sense out of it.
Q-Export will dump messages from any single message board
or from all boards at once, starting at any valid message
number to an export file which you can name (if you don't
wish to name it, Q-Export will name it for you.)
Additionally, you may also tell Q-Export to only dump
messages addressed to a specific user, or from a specific
user, and have Q-Export search for keywords in the Subject
line.
Command Line Syntax --
Q-Export is driven strictly by command line parameters; no
"control" file is used. Here's a summary of the syntax
followed by some examples:
Q-Export v2.5 Doc Page 2
QEXPORT <-Bxxx><-Nxxx><-Hxxx><-Exxx><-Txxx/-Fxxx><-Sxxx>
[<-Z>]
where:
-B = Message board to export from or "All" for all
boards. Ex: -B7 or -Ball
-N = Starting message number to begin export. If message
number is out of range, export begins at the first
valid message number. Ex: -N14254
-H = File to store "last message exported" number for
running Q-Export automatically from a batch file.
See below for more on this.
-E = File to export the messages to. If no filename is
specified, Q-Export will name the file QEXP-xxx.TXT
where xxx is the board number messages were exported
from. If the file already exists, Q-Export will
append the exported messages at the bottom. Ex:
-Eqbbsecho.txt
-L = Log all activity to QEXPORT.LOG. The log structure
is much like the command structure: Each item is
preceded by a letter that matches with the command
line syntax ("B:12" means messages on board #12;
"E:textfile.ext" means messages are exported to the
file "textfile.ext"). Ex: -L
-T/-F = Tells Q-Export to either export only messages
to a specific user (-T) or from a specific user
(-F). You must use an underline to separate the
first and last names. Right now you can only
export messages to a user OR from a user, but not
both. Ex: -Tbob_ransom or -Fjoe_doe
-S = Keyword in the "Subject" field to search for. This
is not really word specific; it will find any and
all matches, regardless of case or whether the match
is a complete word or just part of a word. For
more on this, see below. Ex: -Sqbbs
-Z = Use to reset the high message read pointers created
with the -H option. This command will rarely be
used. See below for more info.
Examples:
QEXPORT -N12 -B2 -Fjohn_doe
- exports messages from board #2, starting with message
#12, that are from John Doe.
QEXPORT -Ball -Hallbord.hi -TBob_Ransom
Q-Export v2.5 Doc Page 3
- exports all messages on all boards addressed to Bob
Ransom. The last message number is stored in the file
ALLBORD.HI. The -B command could be left out in this
case, as default is to all boards.
QEXPORT -N1 -B7 -Eqbbs.txt -Sqbbs is
- exports all messages from board #7 starting with message
#1 in which the subject field contains "qbbs is". Export
filename is QBBS.TXT.
QEXPORT (no parameters at all)
- exports all messages from all boards. Be careful with
this as Q-Export doesn't care how large your message base
is, or whether or not there's enough space to actually
export the entire base. If your message base is 8 meg,
your export file will be 8 meg.
QEXPORT ?
- brings up a small help screen.
The -H Parameter --
Q-Export will create a sort of "last read" message pointer
if you so desire. This is useful if you run Q-Export
nightly or weekly from a batch file. Here's what it does:
If you specify the -H parameter (and filename), Q-Export
will store the message number of the last message exported
in this file. The next time Q-Export is run using the -H
parameter and same filename, Q-Export will pick up where
it left off and export only new messages.
Here's an example that I use here in the nightly
maintenance section of my main BBS batch file:
QEXPORT -B23 -Epascal.txt -Hpascal.hi
Each night when this runs, messages on board #23 (Pascal
Echo) are exported to the file PASCAL.TXT, starting with
the message number stored in PASCAL.HI. Each night, only
new messages are exported. If last night the last message
exported was 12178, then tonight exporting will start with
12179.
The first time Q-Export is run using the -Hfilename
parameter, filename won't exist. Q-Export will bitch a
bit, then create the file and begin the export from the
first valid message.
There's one hitch to this: when you renumber your message
base. Q-Export has no way of knowing when you do this,
and doing so without changing the -H files means that
Q-Export won't export anything. Here's why: Say you have
3500 messages on your system numbered from 1 - 28774. The
Q-Export v2.5 Doc Page 4
last time you ran Q-Export with the -H option, 28774 was
stored in the "high message" file. Then you run MSGPACK
with the -R option to renumber the messages. Now messages
are numbered from 1 - 3500. When Q-Export runs again with
the -H option it finds that 28774 is an invalid message
number and aborts. A problem. This is where the -Z
command comes into play.
The -Z Command --
This command, when used in conjunction with -Hfilename
will reset the high message number in filename to the last
valid message number on the system. In the above example,
filename would be reset to 3500. Note: You must use -Z
with -H (to tell Q-Export which high message pointer to
reset). Without the -H, Q-Export will simply abort as it
doesn't know what to do. Example:
QEXPORT -Z -Hpascal.hi
This resets the number in the file PASCAL.HI to the
correct high message number on the system.
QEXPORT -Z
This does nothing. Q-Export just aborts.
Note to users of older versions of Q-Export: You no
longer need the separate program SET-QEXP.EXE as that
function is now built in with the -Z command.
More On "Subject" Searches (-S) --
As mentioned before, if you use the -S parameter Q-Export
will search for any matches in the Subject field of the
messages. Case is not important, nor does it search for
just whole words - partial words will be found, too.
Also, Q-Export will search for more than one word if you
wish. Here are a couple of examples of the -S parameter
in use, and what would be found.
QEXPORT -Sand syntax
The Subject "spelling and syntax" would be considered a
match as would the Subject "command syntax" (both contain,
literally, "and syntax").
QEXPORT -Sa
The following subjects would all match: "A big deal,"
"deal," "android," "A," etc. Anything where the Subject
contains the letter A (upper or lower case).
Q-Export v2.5 Doc Page 5
As mentioned and shown above, multiple words may be
searched for without specifying the -S before each word.
You need only do it once. After that, any parameter that
doesn't start with a proper Q-Export command is considered
a subject to search for. Here's a convoluted example:
QEXPORT -Sthat -B7 was -N1 then -Edump.txt and this is now
Kind of a mess but it would work as follows: All messages
from board #7, starting with message #1, would be exported
to the file DUMP.TXT if the subject contained the phrase
"that was then and this is now" (or "THAT Was then aNd
thIS IS noW"; remember, case doesn't count.) I don't
suggest doing it this way. In fact, I suggest for clarity
you always put Subject searches as the last parameter.
Stuff You Should Know --
Not only is case not important in subject searches, it
doesn't matter anywhere. Q-Export is not case sensitive
at all.
Name searches look for exact matches.
Remember to always separate first and last names with an
underline (Bob_Ransom). This is how Q-Export decides if
it's a first and last name, or part of the Subject to be
searched for.
Q-Export is hard to stop once it's running. Don't blame
me, blame Borland. Turbo Pascal checks for BREAK after
every normal screen write. For added speed, I'm using
some different screen writes (direct writes) that don't
use standard Turbo Pascal WRITELN commands. Hence, BREAK
(aka CONTROL-C or ^C) doesn't do much. Sorry 'bout that.
I've considered making it possible to switch all screen
writes to go through DOS so that Q-Export would be
redirectable. If I do that, and you use the DOS mode,
BREAK would work. But it would be slow, slow, slow...
I don't know if I need to mention this or not: Q-Export
must be run from your main QuickBBS directory.
Q-Export was written using Turbo Pascal 5.0. I still
haven't gotten around to upgrading to 5.5 yet.
Legal Stuff --
Q-Export is released as shareware, meaning that after a
reasonable trial period, if you wish to continue to use
the program you should send $5 to me at the address below.
This program is not public domain -- it is copyrighted by
Q-Export v2.5 Doc Page 6
the author with all rights reserved. It may be copied
freely provided no changes are made to the executable
files, document files, or any other related files included
in the original package. You are free to rearchive the
files using whatever archiver you wish provided all of the
original files are included and no other files added, and
provided that you don't add any sort of advertisement to
the archive comment. Registered users will receive a
sincere thank you from me, either by netmail or by U.S.
Mail, and will be considered registered for any and all
future releases of the program. Beta testers are
specifically exempt from the need to register. Your help
is invaluable to me and is worth much more than the
registration fee.
Future Plans --
The next step in the ongoing evolution of the program will
be to add two features: 1- The ability to follow message
threads (reply chains) to make for easier offline reading.
Now that 2.04 has the feature, I'd like to take advantage
of it. 2- Modem routines to allow Q-Export to run as a
door. Mike Ratledge has done a phenominal job with the
QMX/XRS system and I have no desire to compete with that.
I would, however, like to make it possible for non-MS-DOS
users to take advantage of the offline message reading
that we IBM types have grown so accustomed to. Adding
this is gonna take some work, so don't expect this to be
released next week. :-)
That's about it. Hope you like how the program works.
Should you run into problems or have questions or
suggestions, feel free to contact me via the QUICKBBS
echo, the QUICKPRO echo, PASCAL echo, or via netmail.
-Bob Ransom
The Creative Connection BBS
27840 Lathrup Blvd.
Lathrup Village, MI 48076
(313) 559-9039
(1:120/96.0)
October 4, 1989
Q-Export v2.5 Doc Page 7
┌───────────────────────────────────────┐
│ R E G I S T R A T I O N F O R M │
└───────────────────────────────────────┘
DATE:
NAME:
ADDRESS:
CITY: STATE/PROVINCE:
ZIP/POSTAL CODE: COUNTRY:
BBS NAME:
BBS PHONE: NET/NODE #: